import axios from 'axios'
axios.defaults.headers['Content-Type'] = 'application/json;charset=utf-8'
// 创建axios实例
const service = axios.create({
  // axios中请求配置有baseURL选项，表示请求URL公共部分
  baseURL: "http://localhost:3000/",
  // 超时
  timeout: 9999999
})

// request拦截器
service.interceptors.request.use(config => {

  // 是否需要设置 token
  // 是否需要防止数据重复提交
  const requestObj = {
    url: config.url,
    data: typeof config.data === 'object' ? JSON.stringify(config.data) : config.data,
    time: new Date().getTime()
  }


  return config
}, error => {
    console.log(error)
    Promise.reject(error)
})

// 响应拦截器
service.interceptors.response.use(res => {
    // 未设置状态码则默认成功状态
    // 获取错误信息
    // 二进制数据则直接返回
    if( res.data?.data?.usage){
      console.log(res.data.data)
      console.log("总共花费token：" +res.data.data.usage.total_tokens)
      const price =( (res.data.data.usage.total_tokens/1000)*0.012).toFixed(4)
      console.log('共花费:'+price+'元')
    }
   return  Promise.resolve(res.data)
  },
  error => {
   
    return Promise.reject(error)
  }
)

export default service